package com.king.designpatterns.行为模式.状态模式;

/**
 * 环境 - 电视机
 *
 * @author king
 * @date 2021-06-11 11:55
 */
public class TV {
    // 电视可以看的频道（状态）
    public static final Channel CCTV1 = new CCTV1();
    public static final Channel CCTV2 = new CCTV2();
    public static final Channel CCTV3 = new CCTV3();

    // 当前频道
    private Channel channel;

    public void setChannel(Channel channel) {
        this.channel = channel;
    }

    // 播放CCTV1频道
    public void disCCTV1(){
        this.setChannel(CCTV1);
        this.channel.display();
    }

    // 播放CCTV2频道
    public void disCCTV2(){
        this.setChannel(CCTV2);
        this.channel.display();
    }

    // 播放CCTV3频道
    public void disCCTV3(){
        this.setChannel(CCTV3);
        this.channel.display();
    }
}
